package com.ruoyi.association.mapper;

import java.util.List;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.association.domain.SysAssociation;

/**
 * 协会Mapper接口
 * 
 * @author ruoyi
 * @date 2025-01-27
 */
public interface SysAssociationMapper extends BaseMapper<SysAssociation>
{
    /**
     * 查询协会
     * 
     * @param associationId 协会主键
     * @return 协会
     */
    public SysAssociation selectSysAssociationByAssociationId(Long associationId);

    /**
     * 查询协会列表
     * 
     * @param sysAssociation 协会
     * @return 协会集合
     */
    public List<SysAssociation> selectSysAssociationList(SysAssociation sysAssociation);

    /**
     * 新增协会
     * 
     * @param sysAssociation 协会
     * @return 结果
     */
    public int insertSysAssociation(SysAssociation sysAssociation);

    /**
     * 修改协会
     * 
     * @param sysAssociation 协会
     * @return 结果
     */
    public int updateSysAssociation(SysAssociation sysAssociation);

    /**
     * 删除协会
     * 
     * @param associationId 协会主键
     * @return 结果
     */
    public int deleteSysAssociationByAssociationId(Long associationId);

    /**
     * 批量删除协会
     * 
     * @param associationIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteSysAssociationByAssociationIds(Long[] associationIds);

    /**
     * 校验协会编码是否唯一
     * 
     * @param associationCode 协会编码
     * @return 结果
     */
    public SysAssociation checkAssociationCodeUnique(String associationCode);

    /**
     * 更新协会会员数量
     * 
     * @param associationId 协会ID
     * @return 结果
     */
    public int updateMemberCount(Long associationId);
}
